// 引入
const http = require('http');
const fs = require('fs');
const path = require('path');
const url = require('url');



// 创建浏览器
http.createServer((req, res) => {
    // 响应头
    res.setHeader('content-type', 'text/html;charset=utf-8');

    //回应login 渲染login 页面
    if (req.url.startsWith('/login') && req.method == 'GET') {
        let data = fs.readFileSync(path.join(__dirname, '/login.html'));
        // console.log(data);
        res.end(data)

    }

    //回应dologin
    else if (req.url.startsWith('/dologin') && req.method == 'GET') {

        // 获取用户名和密码
        // let { query: { username, password } } = url.parse(req.url, true)
        let user = url.parse(req.url, true).query;

        // 读文件
        let data = JSON.parse(fs.readFileSync(path.join(__dirname, '/persons.json')));
        //  json 和获取的账户密码作比较
        // let islogin = data.find(value => value.username ==username && value.password == password);
        // json 和获取的账户密码作比较
        let islogin = data.find(value => value.username == user.username && value.password == user.password);
        if (islogin) {
            res.end('登陆成功')
        } else {
            res.end('用户或密码有误')
        }


        //回应register  渲染register 页面
    } else if (req.url.startsWith('/register') && req.method == 'GET') {
        let data = fs.readFileSync(path.join(__dirname, '/register.html'));

        res.end(data)

    } //回应doregister
    else if (req.url.startsWith('/doregister') && req.method == 'GET') {
        //    获取用户名和密码
        // let { query: { username, password } } = url.parse(req.url, true);
        let user = url.parse(req.url, true).query;

        // 读取文件
        let data = JSON.parse(fs.readFileSync((path.join(__dirname, 'persons.json'))))

        // 比较
        // let isregister = data.find(value => value.username == username);
        let isregister = data.find(value => value.username == user.username);

        // 返回值判断
        if (isregister) {
            res.end('用户名已注册')
        } else {
            // 添加到json 数据中
            // data.push({ username, password });
            data.push(user);

            //写入 用户名和密码转json字符串 
            fs.writeFileSync(path.join(__dirname, "persons.json"), JSON.stringify(data))
            res.end('注册成功')
        }
    } else {
        res.end('404')
    }



}).listen(3000)




